Scaling DLC Part3: How to avoid free option problem with DLC

Ichiro Kuwahara
Crypto Garage
Published in
2 min readMay 7, 2020

Paper:Discreet Log Contracts Channels and Integration in the Lightning Network
Scaling DLC series:
Scaling DLC Part1:
Off-chain Discreet Log Contracts
Scaling DLC Part2:
Free option problem with DLC
Scaling DLC Part3: How to avoid free option problem with DLC -this post-
Scaling DLC Part4:
Integrating DLC channels in the Lightning Network

In the previous post, I gave an overview of the free option problem with DLC. In this post I describe how to avoid this problem with DLC channels.

To solve the free option problem with DLC, we came up with the idea of adding an update transaction and a buffer transaction. The addition of these transactions enable both parties to safely re-enter in a contract after the previous one has expired.

Figure.1 Off-chain DLC transactions

The update transaction is revocable, meaning that after its secret is shared, the party broadcasting it would risk losing all their funds. (similar to the Lightning Network’s punishment mechanism)

The update transaction is also a countermeasure for Alice in the case where Bob does not share the secret value to revoke the transaction of the previous trade, as Alice can use it to close the channel with a balance corresponding to the outcome of the latest contract.

The Buffer transaction is necessary to prevent a party trying to close the channel while a new contract has been fully set-up. For example, if Alice broadcasts the updated transaction and agreed to enter a new contract, Bob can broadcast the buffer transaction to force the execution of the contract. The only way to close the channel will then be to use one of the CET (or the refund transaction). Note that what is described above is for the non-cooperative case. In the cooperative case, Alice and Bob can make a collaborating closing transaction that takes as input the Fund transaction output. Thanks to these two newly added transactions in the protocol, Alice and Bob can continue to create contracts within a DLC channel as long as there is a balance in the channel. Additionally, they can be comforted by the fact that they can close the channel to the latest state.

In the next post, I will explain about Integrating DLC channels in the Lightning Network.

--

--